/* Copyright 2011 Elektrobit Wireless Communications Oy (EB)


  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License version 2 as 
  published by the Free Software Foundation.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License along
  with this program; if not, write to the Free Software Foundation, Inc.,
  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


 *All rights reserved 
 *Version:Elektrobit_Qt_1.0.0_20110305 */


#include "eventservice.h"
#include <servicemanager.h>
#include <QApplication>
#include <QKeyEvent>
#include <appcommon.h>
#include <QMouseEvent>

EventService::EventService(QObject *parent) : Service(parent) {
}

int EventService::start() {
    qApp->installEventFilter(this);
    return 0;
}

bool EventService::eventFilter(QObject * target, QEvent * event) {
    if( event->type() == QEvent::KeyPress ) {
        QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
        SERVICE(RouterService)->keyEvent(keyEvent->key());
        return true;
    }
    return Service::eventFilter(target, event);
}
